home *** CD-ROM | disk | FTP | other *** search
/ STraTOS 1997 April & May / STraTOS 1 - 1997 April & May.iso / CD01 / INTERNET / SITES / RAND / ALL95.LZH / letters_fj / text0012.txt < prev    next >
Encoding:
Text File  |  1995-10-04  |  3.3 KB  |  80 lines

  1. Hi again,
  2.  
  3. > I've started to look at the c source, it looks quite easy
  4. > to translate in 68030. And, of course, in 68030, it'll run
  5. > very FASTER ;-)  than in c, coz we can optimize assembler code, 
  6. > not c code... ;-)
  7.  
  8. I'd be surprised if we could get more than 2-3 times speedup on the
  9. '030, but I'd very much like that suprise...  ;-)
  10.  
  11. > Before the sprites, I'd like to see the maze running fast and
  12. > looking pretty good ...
  13.  
  14. Yes, the maze is of course the more important part, but I worry that
  15. we'll optimize away the stuff that makes the sprites possible.
  16. I'll stop thinking about that for the moment, though.
  17.  
  18. > I think it's not good to start coding details before we know
  19. > how fast can go the essencial. From what you told me, you've
  20. > managed to optimize the structure engine, but from how much ?
  21. > I mean is it big ? ( I mean in memory, of course, to let it
  22. > enter into the dsp).
  23.  
  24. The engine itself is not big at all as you can see from the sources.
  25. I think the sources compile to around 5-10 kbyte m68k object code.
  26. The data from the WAD I've used was also of quite reasonable size.
  27.  
  28. The problem is that the engine used a couple of arrays such as
  29. intersections[50][320], walls[8000] and floorlist[200][40] each of
  30. which must hold 16000 16 bit integers.
  31. The arrays were used to store everything that needed to be drawn. The
  32. actual drawing was then done when everything was ready.
  33. My optimization consisted of drawing walls, floors and ceilings as
  34. soon as they were available, which got rid of all three arrays mentioned,
  35. but introduced a couple of new ones, which fortunately were quite small.
  36. However, I realized yesterday evening that my optimizations will
  37. sometimes produce incorrect displays. The original code drew all floors
  38. before the walls, while I draw a wall(and the closest floor and ceiling)
  39. at a time. In some cases, such as closed doors, there will be clashes...
  40. I hope there's a way to handle this, but I've not discovered it yet.
  41.  
  42. I've heard that SNES DOOM has no floor or ceiling. I'll try that out.
  43.  
  44. > Actually, I'm looking at the c code, trying to understand the
  45. > sequences order, to go faster after.
  46.  
  47. If you have any questions, feel free to ask me. I think I know what's
  48. going on in most of the code now.
  49.  
  50. I guess you've seen that the author says that there must be a lot to
  51. optimize in the actual 3D calculations.
  52. Have you seen anything that can be done there?
  53. Do you have any idea why he does the first clipping (to x = z)? If it's
  54. removed, the most serious display glitches disappear...
  55.  
  56. > We'll probably have to reduce the size of the picture, to have a
  57. > correct speed, the player could choose the size of the window...
  58.  
  59. I'll see how much that improves the speed.
  60.  
  61. > For the sprites, I've got many documents, I'll look what they say
  62. > about it. If you want, I can send you a few documents. Bertrand sent 
  63.  
  64. I'd be interested in that.
  65.  
  66. > Bye for now, tell me when you've got something new.
  67.  
  68. I'll try to send you a new version of DVIEW shortly. This will include
  69. all my test stuff, which might be useful.
  70.  
  71. Regards,
  72. Johan
  73.  
  74. -- 
  75.   Chalmers University   | Why are these |  e-mail:   d8klojo@dtek.chalmers.se
  76.      of Technology      |  .signatures  |            rand@cd.chalmers.se
  77.                         | so hard to do |  www/ftp:  rand.thn.htu.se
  78.    Gothenburg, Sweden   |     well?     |            (MGIFv5 and QLem)
  79.  
  80.